package model.objects;

import java.awt.*;
import java.awt.Point;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;

import javax.swing.*;
import javax.swing.event.CaretEvent;
import javax.swing.event.CaretListener;

import com.nightpiter.model.objects.*;

public class EdiStation extends Station {
	
	
	
	//private Point textRelativePosition = new Point(0, -10);
	
	public Point getTextRelativePosition() {
		return new Point(this.labelX, this.labelY);
	}



	/*public void setTextRelativePosition(Point textRelativePosition) {
		this.textRelativePosition = textRelativePosition;
	}*/



	public EdiStation(String name, Coordinates position, Coordinates pointF, Time open,
			Time close,int labelX,int labelY,int labelAngle, boolean labelVisible) {
		super(name, position, pointF, open, close, labelX, labelY, labelAngle, labelVisible);
		//this.position = new PointF(position);
		
	}
	
	

	/*public EdiStation(Station s) {		
		this(s.getName(), s.getPosition(), s.getLocation(), s.getOpenTime(), s.getCloseTime());
		for(Transfer tr:s.getTransfers()) {
			this.addTransfer(tr);
		}
		for(Tunnel tn:s.getTunnels()) {
			this.addTunnel(tn);
		}
	}*/
	
	public Transfer addTransfer(Transfer tr) {
		this.getTransfers().add(tr);
		return tr;
	}
	
	public Tunnel addTunnel(Tunnel tn) {
		this.getTunnels().add(tn);
		return tn;		
	}

	

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public Coordinates getPosition() {
		return position;
	}

	public void setPosition(Coordinates position) {
		this.position = position;
	}

	public Coordinates getLocation() {
		return location;
	}

	public void setLocation(Coordinates location) {
		this.location = location;
	}

	public Time getOpenTime() {
		return openTime;
	}

	public void setOpenTime(Time openTime) {
		this.openTime = openTime;
	}

	public Time getCloseTime() {
		return closeTime;
	}

	public void setCloseTime(Time closeTime) {
		this.closeTime = closeTime;
	}



	public void setTextRelativePosition(int x, int y) {
		this.labelX = x;
		this.labelY = y;
		
	}	
	
	
	
	

}
